$jq.fn.ordenarNumeros = function()	{
	
	var selectedValue = $jq(this).val();
	
	$jq(this).html($jq("option", $jq(this)).sort(function(a, b) {

		//a = replaceAll(a.text, ".", "");
		//b = replaceAll(b.text, ".", "");
		
		aTemp = a.text.replace(/[^0-9,\.]|/g, "");
		bTemp = b.text.replace(/[^0-9]/g, "");
		
		clog(aTemp);
		
		
		
		if ($jq(a).attr("value") == "" || $jq(b).attr("value") == "") {
			return -1;
		}
		
		if (aTemp == "") {
			return 1;
		}
		
		if (bTemp == "") {
			return -1;
		}
		
		aTemp = parseInt(aTemp, 10);
		bTemp = parseInt(bTemp, 10);
		
		return aTemp == bTemp ? 0 : aTemp < bTemp ? -1 : 1;
	}));

	$jq(this).val(selectedValue);
    
};

$jq.fn.selecionarIndice = function(indice) {
	
	if ($jq(this).is("select")) {
		$jq(this).find("option:nth-child(" + indice +")").attr("selected", "selected");
		return $jq(this);
	}
};

$jq.fn.valorSelecionado = function() {
	
	if ($jq(this).is("select")) {
		return $jq(this).find("option:selected").text();
	}
};

$jq.fn.habilitar = function() {
	return $jq(this).removeAttr("disabled");
};

$jq.fn.desabilitar = function() {
	return $jq(this).attr("disabled", "disabled");
};

$jq.fn.marcarComIndice = function(indiceCheckbox) {
	return $jq(this).eq(indiceCheckbox).attr("checked", true);
};

$jq.fn.desmarcarComIndice = function(indiceCheckbox) {
	return $jq(this).eq(indiceCheckbox).attr("checked", false);
};


$jq.fn.marcar = function() {
	return $jq(this).attr("checked", true);
};

$jq.fn.desmarcar = function() {
	return $jq(this).attr("checked", false);
};

$jq.fn.esconderLinhaTabelaCampo = function() {
	$jq(this).closest("tr").hide();
	return $jq(this); 
};

$jq.fn.mostrarLinhaTabelaCampo = function() {
	$jq(this).closest("tr").show();
	return $jq(this); 
};

$jq.fn.limparBorda = function() {
	return $jq(this).css("border", ""); 
};

$jq.formatarString = function(strToFormat) {
	
	for (var i = 0; i < arguments.length; i++) {
		var replacement = '{' + i + '}';
		strToFormat = strToFormat.replace(replacement, arguments[i]);
	}
	
	return strToFormat;
};

$jq.formatarStringArrayArguments = function() {
	
	var strToFormat = arguments[0];
	var argArray = arguments[1];
	
	for (var i = 0; i < argArray.length; i++) {
		var replacement = '{' + i + '}';
		strToFormat = strToFormat.replace(replacement, argArray[i]);
	}
	
	return strToFormat;
};






String.prototype.replaceAt=function(index, character) {
    return this.substr(0, index) + character + this.substr(index + character.length);
 };
 
 
 String.prototype.removeCharAt=function(index) {
	    return this.substr(0, index) + this.substr(index + this.length);
	 };

